package com.yuhuan.java_se;

public class LearnObject {
    public static void main(String[] args) {
        // 1. Object类中的getClass()方法
        String str = "ll";
        str.hashCode();

        //Object中实现的hashCode()方法返回对象地址
        Object ob = new Object();
        Object obh1 = new Object();
        System.out.println(ob.hashCode());
        System.out.println(System.identityHashCode(ob));
        System.out.println(obh1.hashCode());
        System.out.println(System.identityHashCode(obh1));

    }


    /**
     * 输出对象obj的一些信息
     * @param obj 目标对象
     */
    public static void printCLassInformation(Object obj){
        Class c = obj.getClass();

        // Class类中的方法1.getName()
        System.out.println("类名称："+c.getName());
        // Class类中的方法2.getMethods(),此方法会返回一个Methods类型的数组对象
        //Methods[] ms = c.getMethods();
        // Methods类中的方法有（可以获得方法 返回值的类型、方法的名称、参数列表的类型的类类型）

        // Class类中的方法3. 获得构造函数的信息、成员变量的信息、成员方法的信息···等等

        int a = 12;


    }
}
